終於員工旅遊回來了,有50%都在車上真的是有點沒休閒到,畢竟從台北殺到台中東勢大雪山,好遙遠但是也不錯,,以上是我自導自編,針對菜鳥入門程式設計師需要學習心態與哪些基礎技巧。
今天要講到最重要的SQL,叫做JOIN(連接),為什麼這個很重要,因為一個TABLE絕對不可能包含所有的資料,因為這樣資料很混亂,而且可能會有重復的問題,所以有些資料都會給一個叫做唯一序號的東西,例如像身分證,這是一個絕對不會有重復的資料,如果有那戶政真的打屁股了,這是識別國人很重要的身分之一,當然唯一序不只有身分證,也可以多個欄位組成,例如年度+學號也可以組成唯一序,只要能識別他是唯一就是先決條件,首先先給各位兩個TABLE,當作範例。
1.JOIN
ID NAME TEL ADDR
001 泰大 110 神之領域1號
002 老鷹 119 樹上洞穴13巷2號
003 法師 168 魔界39號洞穴
004 總裁 165 無我境界25號
ID AGE SEX
001 35 boy
002 23 boy
003 39 grils
先不理解join的原理如何,看圖比較容易了解,講這麼多不如看結果
看到上面只光用join就跑出一堆資料,而且還重復內容,是不是感覺很奇怪,join的功能其實白話舉立一下,學生有基本資料,但是成績卻有不同科別的區分,每個分數都在不同老師的掌控下,如果你要將一個學生的資料加上成績,那就會像這樣!!學生資料+各科成績,這樣就可以讓資料帶出來。
上面因為我們的基本資料有四個人,可是年齡資料實際登入卻只有三個人,所以結果就會像這樣4*3=12筆,會有重復的三筆年齡資料,分別出現在四個人,這樣完全是不對的資料,所以之前提的唯一序就出現了,因為登打成績的老師一定知道你是誰,而且也會有你的學號,這樣他就可以把成績登記在你的名字下,所以串起來就像這樣。
其中還有例外一個叫外部連結,明天待續
2.SUBSTR抓取特定資料
首先先看範例
使用SUBSTR(NAME,從第幾位開始,抓取多少位)
其他文章連結處,可以找尋到先前發文的位置
http://ithelp.ithome.com.tw/ironman6/player/ianianwu/other/1